package event;

import java.util.ArrayList;
import java.util.Collection;
import warehouse.Resource;

public class PrePreparationState extends EventState{
	
	public PrePreparationState(int partecipantMissingTable, int partecipantMissingGazebo) {
		super();
		this.partecipantMissingTable = partecipantMissingTable;
		this.partecipantMissingGazebo = partecipantMissingGazebo;
		this.reservedResources = new ArrayList<Resource>();
	}
	
	/**
	 * @param id
	 * @param partecipantMissingTable
	 * @param partecipantMissingGazebo
	 */
	public PrePreparationState(long id, int partecipantMissingTable, int partecipantMissingGazebo) {
		super();
		this.partecipantMissingTable = partecipantMissingTable;
		this.partecipantMissingGazebo = partecipantMissingGazebo;
		this.reservedResources = new ArrayList<Resource>();
	}
	
	public PrePreparationState(long id, int partecipantMissingTable, int partecipantMissingGazebo, Collection<Resource> reservedResources) {
		super();
		this.partecipantMissingTable = partecipantMissingTable;
		this.partecipantMissingGazebo = partecipantMissingGazebo;
		this.reservedResources = reservedResources;
	}
	public int getPartecipantMissingTable() {
		return partecipantMissingTable;
	}
	public void setPartecipantMissingTable(int partecipantMissingTable) {
		this.partecipantMissingTable = partecipantMissingTable;
	}
	public int getPartecipantMissingGazebo() {
		return partecipantMissingGazebo;
	}
	public void setPartecipantMissingGazebo(int partecipantMissingGazebo) {
		this.partecipantMissingGazebo = partecipantMissingGazebo;
	}

	public String getName() {
		return "PRE_PREPARATION_STATE";
	}
	
	public Collection<Resource> getReservedResources() {
		return reservedResources;
	}
	
	public void addReservedResources(Resource resource) {
		reservedResources.add(resource);
	}
	private int partecipantMissingTable;
	private int partecipantMissingGazebo;
	private Collection<Resource> reservedResources;
}
